home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Mac Game Programming Gurus / TricksOfTheMacGameProgrammingGurus.iso / More Source / C⁄C++ / Xconq 7.0d37 / source / kernel / help.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-05-03  |  2.4 KB  |  54 lines  |  [TEXT/KAHL]

  1. /* Help-related definitions for Xconq.
  2.    Copyright (C) 1991, 1992, 1993, 1994 Stanley T. Shebs.
  3.  
  4. Xconq is free software; you can redistribute it and/or modify
  5. it under the terms of the GNU General Public License as published by
  6. the Free Software Foundation; either version 2, or (at your option)
  7. any later version.  See the file COPYING.  */
  8.  
  9. enum nodeclass {
  10.     miscnode,
  11.     utypenode,
  12.     mtypenode,
  13.     ttypenode
  14. };
  15.  
  16. typedef struct a_helpnode {
  17.     char *key;
  18.     void (*fn) PROTO ((int arg, char *key, char *buf));
  19.     enum nodeclass nclass;
  20.     int arg;
  21.     char *text;
  22.     int textend;
  23.     int textsize;
  24.     struct a_helpnode *prev;
  25.     struct a_helpnode *next;
  26. } HelpNode;
  27.  
  28. extern HelpNode *firsthelpnode;
  29.  
  30. extern HelpNode *create_help_node PROTO ((void));
  31. extern HelpNode *add_help_node PROTO ((char *key, void (*fn)(int, char *, char *), int arg, HelpNode *prevnode));
  32. extern HelpNode *find_help_node PROTO ((HelpNode *node, char *str));
  33. extern void describe_copyright PROTO ((int arg, char *key, char *buf));
  34. extern void describe_topics PROTO ((int arg, char *key, char *buf));
  35. extern void describe_news PROTO ((int arg, char *key, char *buf));
  36. extern void init_help PROTO ((void));
  37. extern void create_game_help_nodes PROTO ((void));
  38. extern char *get_help_text PROTO ((HelpNode *node));
  39. extern void describe_concepts PROTO ((int arg, char *key, char *buf));
  40. extern void describe_game_design PROTO ((int arg, char *key, char *buf));
  41. extern void describe_utype PROTO ((int u, char *key, char *buf));
  42. extern void append_help_phrase PROTO ((char *buf, char *phrase));
  43. extern void append_notes PROTO ((char *buf, Obj *notes));
  44. extern void append_number PROTO ((char *buf, int value, int dflt));
  45. extern void describe_mtype PROTO ((int m, char *key, char *buf));
  46. extern void describe_ttype PROTO ((int t, char *key, char *buf));
  47. extern void describe_scorekeepers PROTO ((int arg, char *key, char *buf));
  48. /* extern int histogram_compare PROTO ((struct histo *h1, struct histo *h2)); */
  49. extern void uu_table_row_desc PROTO ((char *buf, int u, int (*fn)(int, int), void (*formatter)(char *, int)));
  50. extern void um_table_row_desc PROTO ((char *buf, int u, int (*fn)(int, int), void (*formatter)(char *, int)));
  51. extern void ut_table_row_desc PROTO ((char *buf, int u, int (*fn)(int, int), void (*formatter)(char *, int)));
  52. extern void print_any_news PROTO ((void));
  53. extern void print_game_description_to_file PROTO ((FILE *fp));
  54.